#include <REGX52.H>

/**
  * @brief  定时器0初始化，1毫秒@12.000MHz
  * @param  无
  * @retval 无
  */
void Timer0Init() { 
	TMOD &= 0xF0; // 设置定时器模式（与或赋值法，低四位清零，高四位不变）
	TMOD |= 0x01; // 设置定时器模式（与或赋值法，最低位置1，高四位不变）
	TL0 = 0x18;	  // 设置定时初值
	TH0 = 0xFC;	  // 设置定时初值
	TF0 = 0;	  // 清除TF0标志
	TR0 = 1;	  // 定时器0开始计时
	
	ET0 = 1;	  // 允许中断
	EA = 1;		  // 允许总中断
	PT0 = 0;	  // 中断优先级
}

/**
  * @brief 定时器中断函数模板

void Timer0_Routine() interrupt 1 {
	static unsigned int T0Count; // 静态变量，函数结束后不会销毁（与全局变量的区别：只有本函数可以使用）
	TL0 = 0x18;	  // 重新设置定时初值
	TH0 = 0xFC;	  // 重新设置定时初值
	// 1000ms后点亮第一个LED
	if(++T0Count >= 1000) {
		T0Count = 0;	// T0Count
		P2_0 = ~P2_0;
	}
}

*/